#ifndef QRECTWIDGET_H
#define QRECTWIDGET_H

#include "qabstractgraphics.h"

#include <QWidget>

class QRectWidget : public QAbstractGraphicsWidget
{
    Q_OBJECT
    Q_PROPERTY(int x_radius READ xRadius WRITE setXRadius)
    Q_PROPERTY(int y_radius READ yRadius WRITE setYRadius)
public:
    explicit QRectWidget(QWidget *parent = 0);


    int     xRadius();
    void    setXRadius(int xRadius);

    int     yRadius();
    void    setYRadius(int lineWidth);
protected:
    void paintEvent(QPaintEvent *);
protected:
    int     m_x_radius;
    int     m_y_radius;
};



class QRectWidgetHost : public QAbstractGraphicsHost
{
    Q_OBJECT
public:
    Q_INVOKABLE QRectWidgetHost(QAbstractHost *parent = 0);

    static QString get_show_name();
    static QString get_show_icon();
    static QString get_show_group();
public slots:

    int     xRadius();
    void    setXRadius(int xRadius);

    int     yRadius();
    void    setYRadius(int yRadius);
protected:
    void init_property();
protected:
    void    create_object();
};

#endif // QRECTWIDGET_H
